// 4. 具体观察者：当前天气显示屏
/// <summary>
/// 具体观察者类，实现了IObserver接口
/// 负责显示当前的天气状况（温度和湿度）
/// </summary>
public class CurrentConditionsDisplay : IObserver
{
  /// <summary>
  /// 存储当前温度值
  /// </summary>
  private float _temperature;
  
  /// <summary>
  /// 存储当前湿度值
  /// </summary>
  private float _humidity;

  /// <summary>
  /// 实现IObserver接口的更新方法
  /// 当气象数据更新时被调用，更新内部状态并显示
  /// </summary>
  /// <param name="temperature">更新后的温度值</param>
  /// <param name="humidity">更新后的湿度值</param>
  /// <param name="pressure">更新后的气压值（在此观察者中未使用）</param>
  public void Update(float temperature, float humidity, float pressure)
  {
    _temperature = temperature;
    _humidity = humidity;
    Display();
  }

  /// <summary>
  /// 显示当前天气状况
  /// 在更新数据后自动调用
  /// </summary>
  public void Display()
  {
    Console.WriteLine($"当前天气：温度 {_temperature}°C，湿度 {_humidity}%");
  }
}